package cn.edu.sgu.www.mhxysy.service.xingyin;

import cn.edu.sgu.www.mhxysy.pager.Pager;
import cn.edu.sgu.www.mhxysy.dto.xingyin.XingyinDTO;
import cn.edu.sgu.www.mhxysy.entity.xingyin.Xingyin;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.springframework.transaction.annotation.Transactional;

/**
 * @author 沐雨橙风ιε
 * @version 1.0
 */
public interface XingyinService {

    /**
     * 一键计算并修改星印评分
     * @param xingyinId 星印ID
     */
    void compute(String xingyinId);

    /**
     * 添加星印
     * @param xingyinDTO 星印信息
     */
    @Transactional(rollbackFor = Exception.class)
    void insert(XingyinDTO xingyinDTO);

    /**
     * 通过ID删除星印
     * @param xingyinId 星印ID
     */
    @Transactional(rollbackFor = Exception.class)
    void deleteById(String xingyinId);

    /**
     * 通过ID修改星印信息
     * @param xingyinDTO 星印信息
     */
    void updateById(XingyinDTO xingyinDTO);

    /**
     * 分页查询星印列表
     * @param pager 分页参数
     */
    Page<Xingyin> selectByPage(Pager<Xingyin> pager);
}